package com.example.dzbsh.model;

import java.util.ArrayList;
import java.util.List;

public class DictTuichufangshiExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public DictTuichufangshiExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(String value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(String value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(String value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(String value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(String value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(String value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLike(String value) {
            addCriterion("id like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotLike(String value) {
            addCriterion("id not like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<String> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<String> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(String value1, String value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(String value1, String value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andQiyeleixingidIsNull() {
            addCriterion("qiyeleixingid is null");
            return (Criteria) this;
        }

        public Criteria andQiyeleixingidIsNotNull() {
            addCriterion("qiyeleixingid is not null");
            return (Criteria) this;
        }

        public Criteria andQiyeleixingidEqualTo(String value) {
            addCriterion("qiyeleixingid =", value, "qiyeleixingid");
            return (Criteria) this;
        }

        public Criteria andQiyeleixingidNotEqualTo(String value) {
            addCriterion("qiyeleixingid <>", value, "qiyeleixingid");
            return (Criteria) this;
        }

        public Criteria andQiyeleixingidGreaterThan(String value) {
            addCriterion("qiyeleixingid >", value, "qiyeleixingid");
            return (Criteria) this;
        }

        public Criteria andQiyeleixingidGreaterThanOrEqualTo(String value) {
            addCriterion("qiyeleixingid >=", value, "qiyeleixingid");
            return (Criteria) this;
        }

        public Criteria andQiyeleixingidLessThan(String value) {
            addCriterion("qiyeleixingid <", value, "qiyeleixingid");
            return (Criteria) this;
        }

        public Criteria andQiyeleixingidLessThanOrEqualTo(String value) {
            addCriterion("qiyeleixingid <=", value, "qiyeleixingid");
            return (Criteria) this;
        }

        public Criteria andQiyeleixingidLike(String value) {
            addCriterion("qiyeleixingid like", value, "qiyeleixingid");
            return (Criteria) this;
        }

        public Criteria andQiyeleixingidNotLike(String value) {
            addCriterion("qiyeleixingid not like", value, "qiyeleixingid");
            return (Criteria) this;
        }

        public Criteria andQiyeleixingidIn(List<String> values) {
            addCriterion("qiyeleixingid in", values, "qiyeleixingid");
            return (Criteria) this;
        }

        public Criteria andQiyeleixingidNotIn(List<String> values) {
            addCriterion("qiyeleixingid not in", values, "qiyeleixingid");
            return (Criteria) this;
        }

        public Criteria andQiyeleixingidBetween(String value1, String value2) {
            addCriterion("qiyeleixingid between", value1, value2, "qiyeleixingid");
            return (Criteria) this;
        }

        public Criteria andQiyeleixingidNotBetween(String value1, String value2) {
            addCriterion("qiyeleixingid not between", value1, value2, "qiyeleixingid");
            return (Criteria) this;
        }

        public Criteria andZhengmingcailiaoidIsNull() {
            addCriterion("zhengmingcailiaoid is null");
            return (Criteria) this;
        }

        public Criteria andZhengmingcailiaoidIsNotNull() {
            addCriterion("zhengmingcailiaoid is not null");
            return (Criteria) this;
        }

        public Criteria andZhengmingcailiaoidEqualTo(String value) {
            addCriterion("zhengmingcailiaoid =", value, "zhengmingcailiaoid");
            return (Criteria) this;
        }

        public Criteria andZhengmingcailiaoidNotEqualTo(String value) {
            addCriterion("zhengmingcailiaoid <>", value, "zhengmingcailiaoid");
            return (Criteria) this;
        }

        public Criteria andZhengmingcailiaoidGreaterThan(String value) {
            addCriterion("zhengmingcailiaoid >", value, "zhengmingcailiaoid");
            return (Criteria) this;
        }

        public Criteria andZhengmingcailiaoidGreaterThanOrEqualTo(String value) {
            addCriterion("zhengmingcailiaoid >=", value, "zhengmingcailiaoid");
            return (Criteria) this;
        }

        public Criteria andZhengmingcailiaoidLessThan(String value) {
            addCriterion("zhengmingcailiaoid <", value, "zhengmingcailiaoid");
            return (Criteria) this;
        }

        public Criteria andZhengmingcailiaoidLessThanOrEqualTo(String value) {
            addCriterion("zhengmingcailiaoid <=", value, "zhengmingcailiaoid");
            return (Criteria) this;
        }

        public Criteria andZhengmingcailiaoidLike(String value) {
            addCriterion("zhengmingcailiaoid like", value, "zhengmingcailiaoid");
            return (Criteria) this;
        }

        public Criteria andZhengmingcailiaoidNotLike(String value) {
            addCriterion("zhengmingcailiaoid not like", value, "zhengmingcailiaoid");
            return (Criteria) this;
        }

        public Criteria andZhengmingcailiaoidIn(List<String> values) {
            addCriterion("zhengmingcailiaoid in", values, "zhengmingcailiaoid");
            return (Criteria) this;
        }

        public Criteria andZhengmingcailiaoidNotIn(List<String> values) {
            addCriterion("zhengmingcailiaoid not in", values, "zhengmingcailiaoid");
            return (Criteria) this;
        }

        public Criteria andZhengmingcailiaoidBetween(String value1, String value2) {
            addCriterion("zhengmingcailiaoid between", value1, value2, "zhengmingcailiaoid");
            return (Criteria) this;
        }

        public Criteria andZhengmingcailiaoidNotBetween(String value1, String value2) {
            addCriterion("zhengmingcailiaoid not between", value1, value2, "zhengmingcailiaoid");
            return (Criteria) this;
        }

        public Criteria andTuichuleixingIsNull() {
            addCriterion("tuichuleixing is null");
            return (Criteria) this;
        }

        public Criteria andTuichuleixingIsNotNull() {
            addCriterion("tuichuleixing is not null");
            return (Criteria) this;
        }

        public Criteria andTuichuleixingEqualTo(Integer value) {
            addCriterion("tuichuleixing =", value, "tuichuleixing");
            return (Criteria) this;
        }

        public Criteria andTuichuleixingNotEqualTo(Integer value) {
            addCriterion("tuichuleixing <>", value, "tuichuleixing");
            return (Criteria) this;
        }

        public Criteria andTuichuleixingGreaterThan(Integer value) {
            addCriterion("tuichuleixing >", value, "tuichuleixing");
            return (Criteria) this;
        }

        public Criteria andTuichuleixingGreaterThanOrEqualTo(Integer value) {
            addCriterion("tuichuleixing >=", value, "tuichuleixing");
            return (Criteria) this;
        }

        public Criteria andTuichuleixingLessThan(Integer value) {
            addCriterion("tuichuleixing <", value, "tuichuleixing");
            return (Criteria) this;
        }

        public Criteria andTuichuleixingLessThanOrEqualTo(Integer value) {
            addCriterion("tuichuleixing <=", value, "tuichuleixing");
            return (Criteria) this;
        }

        public Criteria andTuichuleixingIn(List<Integer> values) {
            addCriterion("tuichuleixing in", values, "tuichuleixing");
            return (Criteria) this;
        }

        public Criteria andTuichuleixingNotIn(List<Integer> values) {
            addCriterion("tuichuleixing not in", values, "tuichuleixing");
            return (Criteria) this;
        }

        public Criteria andTuichuleixingBetween(Integer value1, Integer value2) {
            addCriterion("tuichuleixing between", value1, value2, "tuichuleixing");
            return (Criteria) this;
        }

        public Criteria andTuichuleixingNotBetween(Integer value1, Integer value2) {
            addCriterion("tuichuleixing not between", value1, value2, "tuichuleixing");
            return (Criteria) this;
        }

        public Criteria andTuichufangshimingchengIsNull() {
            addCriterion("tuichufangshimingcheng is null");
            return (Criteria) this;
        }

        public Criteria andTuichufangshimingchengIsNotNull() {
            addCriterion("tuichufangshimingcheng is not null");
            return (Criteria) this;
        }

        public Criteria andTuichufangshimingchengEqualTo(String value) {
            addCriterion("tuichufangshimingcheng =", value, "tuichufangshimingcheng");
            return (Criteria) this;
        }

        public Criteria andTuichufangshimingchengNotEqualTo(String value) {
            addCriterion("tuichufangshimingcheng <>", value, "tuichufangshimingcheng");
            return (Criteria) this;
        }

        public Criteria andTuichufangshimingchengGreaterThan(String value) {
            addCriterion("tuichufangshimingcheng >", value, "tuichufangshimingcheng");
            return (Criteria) this;
        }

        public Criteria andTuichufangshimingchengGreaterThanOrEqualTo(String value) {
            addCriterion("tuichufangshimingcheng >=", value, "tuichufangshimingcheng");
            return (Criteria) this;
        }

        public Criteria andTuichufangshimingchengLessThan(String value) {
            addCriterion("tuichufangshimingcheng <", value, "tuichufangshimingcheng");
            return (Criteria) this;
        }

        public Criteria andTuichufangshimingchengLessThanOrEqualTo(String value) {
            addCriterion("tuichufangshimingcheng <=", value, "tuichufangshimingcheng");
            return (Criteria) this;
        }

        public Criteria andTuichufangshimingchengLike(String value) {
            addCriterion("tuichufangshimingcheng like", value, "tuichufangshimingcheng");
            return (Criteria) this;
        }

        public Criteria andTuichufangshimingchengNotLike(String value) {
            addCriterion("tuichufangshimingcheng not like", value, "tuichufangshimingcheng");
            return (Criteria) this;
        }

        public Criteria andTuichufangshimingchengIn(List<String> values) {
            addCriterion("tuichufangshimingcheng in", values, "tuichufangshimingcheng");
            return (Criteria) this;
        }

        public Criteria andTuichufangshimingchengNotIn(List<String> values) {
            addCriterion("tuichufangshimingcheng not in", values, "tuichufangshimingcheng");
            return (Criteria) this;
        }

        public Criteria andTuichufangshimingchengBetween(String value1, String value2) {
            addCriterion("tuichufangshimingcheng between", value1, value2, "tuichufangshimingcheng");
            return (Criteria) this;
        }

        public Criteria andTuichufangshimingchengNotBetween(String value1, String value2) {
            addCriterion("tuichufangshimingcheng not between", value1, value2, "tuichufangshimingcheng");
            return (Criteria) this;
        }

        public Criteria andOrdernumIsNull() {
            addCriterion("ordernum is null");
            return (Criteria) this;
        }

        public Criteria andOrdernumIsNotNull() {
            addCriterion("ordernum is not null");
            return (Criteria) this;
        }

        public Criteria andOrdernumEqualTo(Integer value) {
            addCriterion("ordernum =", value, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumNotEqualTo(Integer value) {
            addCriterion("ordernum <>", value, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumGreaterThan(Integer value) {
            addCriterion("ordernum >", value, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumGreaterThanOrEqualTo(Integer value) {
            addCriterion("ordernum >=", value, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumLessThan(Integer value) {
            addCriterion("ordernum <", value, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumLessThanOrEqualTo(Integer value) {
            addCriterion("ordernum <=", value, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumIn(List<Integer> values) {
            addCriterion("ordernum in", values, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumNotIn(List<Integer> values) {
            addCriterion("ordernum not in", values, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumBetween(Integer value1, Integer value2) {
            addCriterion("ordernum between", value1, value2, "ordernum");
            return (Criteria) this;
        }

        public Criteria andOrdernumNotBetween(Integer value1, Integer value2) {
            addCriterion("ordernum not between", value1, value2, "ordernum");
            return (Criteria) this;
        }

        public Criteria andIsvalidIsNull() {
            addCriterion("isvalid is null");
            return (Criteria) this;
        }

        public Criteria andIsvalidIsNotNull() {
            addCriterion("isvalid is not null");
            return (Criteria) this;
        }

        public Criteria andIsvalidEqualTo(Integer value) {
            addCriterion("isvalid =", value, "isvalid");
            return (Criteria) this;
        }

        public Criteria andIsvalidNotEqualTo(Integer value) {
            addCriterion("isvalid <>", value, "isvalid");
            return (Criteria) this;
        }

        public Criteria andIsvalidGreaterThan(Integer value) {
            addCriterion("isvalid >", value, "isvalid");
            return (Criteria) this;
        }

        public Criteria andIsvalidGreaterThanOrEqualTo(Integer value) {
            addCriterion("isvalid >=", value, "isvalid");
            return (Criteria) this;
        }

        public Criteria andIsvalidLessThan(Integer value) {
            addCriterion("isvalid <", value, "isvalid");
            return (Criteria) this;
        }

        public Criteria andIsvalidLessThanOrEqualTo(Integer value) {
            addCriterion("isvalid <=", value, "isvalid");
            return (Criteria) this;
        }

        public Criteria andIsvalidIn(List<Integer> values) {
            addCriterion("isvalid in", values, "isvalid");
            return (Criteria) this;
        }

        public Criteria andIsvalidNotIn(List<Integer> values) {
            addCriterion("isvalid not in", values, "isvalid");
            return (Criteria) this;
        }

        public Criteria andIsvalidBetween(Integer value1, Integer value2) {
            addCriterion("isvalid between", value1, value2, "isvalid");
            return (Criteria) this;
        }

        public Criteria andIsvalidNotBetween(Integer value1, Integer value2) {
            addCriterion("isvalid not between", value1, value2, "isvalid");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}